Lane-level geometry and traffic information

ABSTRACT

Provided herein is a method for establishing lane-level data from probe data. Methods may include receiving probe data points associated with a plurality of vehicles; determining, for each of the probe data points, a location and road segment corresponding to the location; generating, from the probe data points associated with a first road segment, a cell-density image of the first road segment, where the cell-density image represents a volume of probe data points at each of a plurality of cells of a grid overlaid on the first road segment; applying a deconvolution method to the cell-density image to obtain a refined cell-density image having a lower degree of data point spread; determining, from the refined cell-density image, a number of paths along the first road segment, where each path represents a lane; and computing, from the refined cell-density image, lane-level properties of the probe data of the first road segment.

TECHNOLOGICAL FIELD

Example embodiments described herein relate generally to lane-leveltraffic information/data for multi-lane road segments, and moreparticularly, to gathering probe data to determine lane-levelinformation/data in order to perform lane-level navigation and/orautonomous vehicle control along multi-lane road segments based onlane-level traffic information/data.

BACKGROUND

Generally, the location of a vehicle or probe may be determined using aglobal navigation satellite system (GNSS), an example of which is theUnited States' global positioning system (GPS). Other examples of GNSSsystems are GLONASS (Russia), Galileo (European Union) andBeidou/Compass (China), all systems having varying degrees of accuracy.Under good conditions, GPS provides a real-time location of a probevehicle with a 95% confidence interval of 7.8 meters, according to theUS government. Given that the width of many lanes along a road segmentis only 2.5 to 4 meters, this accuracy may not be sufficient todetermine the particular lane of a road segment in which a probe vehicleis traveling. As a result, determining lane-level trafficinformation/data and/or performing lane-level navigation is difficult.

BRIEF SUMMARY OF EXAMPLE EMBODIMENTS

At least some example embodiments are directed to determining lane-levelgeometry and traffic information/data based on probe information/data.In an example embodiment, a mapping system may be provided including amemory having map data stored thereon and processing circuitry. Theprocessing circuitry may be configured to receive probe data pointsassociated with a plurality of vehicles, each probe data point receivedfrom a probe apparatus of a plurality of probe apparatuses, each probeapparatus including one or more sensors and being onboard a respectivevehicle, where each probe data point includes location informationassociated with the respective probe apparatus. For each of the probedata points, a location may be determined along with a road segmentcorresponding to the location. From the probe data points associatedwith a first road segment, a probe density histogram may be generatedfor the first road segment, where the probe density histogram representsa volume of probe data points at each of a plurality of positions acrossa width of the first road segment. A deconvolution method may be appliedto the probe density histogram to obtain a multi-modal histogram. Fromthe multi-modal histogram, a number of statistically significant peaksmay be determined, where each statistically significant peak representsa lane of the first road segment. Lane-level properties of the probedata of the first road segment may be computed from the multi-modalhistogram. Navigational assistance and/or at least semi-autonomousvehicle control may be provided based on the computed lane-levelproperties of the probe data of the first road segment.

According to some embodiments, the processing circuitry configured tocompute, from the multi-modal histogram, lane-level properties of theprobe data of the first road segment includes processing circuitryconfigured to determine, from the multi-modal histogram, a distance ofeach statistically significant peak from the first road segmentcenterline. The processing circuitry configured to compute, from themulti-modal histogram, lane-level properties of the probe data of thefirst road segment may include processing circuitry configured to:generate digital map data having a number of road segment lanescorresponding to the number of statistically significant peaks atpositions corresponding to the distance of each statisticallysignificant peak from the road segment centerline; and provide for atleast semi-autonomous vehicle control or navigation assistance using thegenerated digital map data.

The processing circuitry configured to generate a probe densityhistogram for the first road segment representing a volume of probe datapoints at each of a plurality of positions across a width of the roadsegment may include processing circuitry configured to: sub-divide awidth of the first road segment into a plurality of bins according to achosen bin size; bin each probe data point to a respective one of theplurality of bins corresponding to a distance of the respective probedata point from a centerline of the road segment; and generate the probedensity histogram based on a volume of probe data points in each binacross a width of the road segment. The deconvolution method used mayinclude a Maximum Entropy Method. The processing circuitry configured toapply a deconvolution method to the probe density histogram to obtain amulti-modal histogram may include processing circuitry configured to:model location error of the probe data points associated with the firstroad segment using a point spread function; apply the deconvolutionmethod to the probe density histogram using the point spread function;and generate the multi-modal histogram for the first road segment.

According to some embodiments, the processing circuitry configured todetermine, from the multi-modal histogram, a number of statisticallysignificant peaks, where each statistically significant peak representsa lane of the first road segment may include processing circuitryconfigured to identify a lane of the first road segment in response to acorresponding statistically significant peak being within typicalminimum and maximum lane width range, such as a range of 2.5 meters to3.6 meters of another statistically significant peak. The processingcircuitry configured to, for each of the probe data points, determine alocation and a road segment corresponding to the location may includeprocessing circuitry configured to: map-match the probe data points tothe first road segment; sub-divide the road segment into a plurality ofsub-segments; and associate each of the probe data points map-matched tothe first road segment to one of the plurality of sub-segments. Theprocessing circuitry configured to generate, from the probe data pointsassociated with a first road segment, a probe density histogram for thefirst road segment includes processing circuitry configured to generate,from probe data points associated with a first road segment, a probedensity histogram for each of the sub-segments of the first roadsegment.

Embodiments described herein may provide an apparatus including at leastone processor, at least one memory storing computer program code, withthe at least one memory and the computer program code configured to,with the processor, cause the apparatus to at least receive probe datapoints associated with a plurality of vehicles, each probe data pointreceived from a probe apparatus of a plurality of probe apparatuses,each probe apparatus including one or more sensors and being onboard arespective vehicle, where each probe data point includes locationinformation associated with the respective probe apparatus. For each ofthe probe data points, a location may be determined along with a roadsegment corresponding to the location. From the probe data pointsassociated with the first road segment, a probe density histogram may begenerated for the first road segment, where the probe density histogramrepresents a volume of probe data points at each of a plurality ofpositions across a width of the first road segment. A deconvolutionmethod may be applied to the probe density histogram to obtain amulti-modal histogram from which a number of statistically significantpeaks may be determined, each statistically significant peakrepresenting a lane of the first road segment. From the multi-modalhistogram, lane-level properties of the probe data of the first roadsegment may be computed. Navigational assistance and/or at leastsemi-autonomous vehicle control may be provided based on the computedlane-level properties of the probe data of the first road segment.

According to some embodiments, causing the apparatus to compute, fromthe multi-modal histogram, lane-level properties of the probe data ofthe first road segment may include causing the apparatus to determine,from the multi-modal histogram, a distance of each statisticallysignificant peak from the first road segment centerline. Causing theapparatus to compute, from the multi-modal histogram, lane-levelproperties of the probe data of the first road segment may includecausing the apparatus to: generate digital map data having a number ofroad segment lanes corresponding to the number of statisticallysignificant peaks at positions corresponding to the distance of eachstatistically significant peak from the road segment centerline; andprovide for at least semi-autonomous vehicle control or navigationassistance using the generated digital map data.

Causing the apparatus to generate a probe density histogram for thefirst road segment representing a volume of probe data points at each ofa plurality of positions across a width of the road segment may includecausing the apparatus to: sub-divide a width of the first road segmentinto a plurality of bins according to a chosen bin size; bin each probedata point to a respective one of the plurality of bins corresponding toa distance of the respective probe data point from a centerline of theroad segment; and generate the probe density histogram based on a volumeof probe data points in each bin across a width of the road segment. Thedeconvolution method used may include a Maximum Entropy Method.

According to some embodiments, causing the apparatus apply adeconvolution method to the probe density histogram to obtain amulti-modal histogram may include causing the apparatus to: modellocation error of the probe data points associated with the first roadsegment using a point spread function; apply the deconvolution method tothe probe density histogram using the point spread function; andgenerate the multi-modal histogram for the first road segment. Causingthe apparatus to determine, from the multi-modal histogram, a number ofstatistically significant peaks, where each statistically significantpeak represents a lane of the first road segment may include causing theapparatus to identify a lane of the first road segment in response to acorresponding statistically significant peak being within a range of 2.5meters to 3.6 meters of another statistically significant peak.

The apparatus of some embodiments, caused to determine a location and aroad segment corresponding to the location of the probe data points mayinclude being caused to: map-match the probe data points to the firstroad segment; sub-divide the road segment into a plurality ofsub-segments; and associate each of the probe data points map-matched tothe first road segment to one of the plurality of sub-segments. Causingthe apparatus to generate, from the probe data points associated with afirst road segment, a probe density histogram for the first road segmentmay include causing the apparatus to generate, from the probe datapoints associated with a first road segment, a probe density histogramfor each of the sub-segments of the first road segment.

Embodiments described herein may provide a method for establishinglane-level data from probe data. Methods may include receiving probedata points associated with a plurality of vehicles, each probe datapoint received from a probe apparatus of a plurality of probeapparatuses, each probe apparatus including one or more sensors andbeing onboard a respective vehicle, where each probe data point includeslocation information associated with the respective probe apparatus.Methods may include: determining, for each of the probe data points, alocation and road segment corresponding to the location; generating,from the probe data points associated with a first road segment, a probedensity histogram for the first road segment, where the probe densityhistogram represents a volume of probe data points at each of aplurality of positions across a width of the first road segment;applying a deconvolution method to the probe density histogram to obtaina multi-modal histogram; determining, from the multi-modal histogram, anumber of statistically significant peaks, where each statisticallysignificant peak represents a lane of the first road segment; computing,from the multi-modal histogram, lane-level properties of the probe dataof the first road segment; and providing for at least one ofnavigational assistance or at least semi-autonomous vehicle controlbased on the computed lane-level properties of the probe data of thefirst road segment.

According to some embodiments, computing, from the multi-modalhistogram, lane-level properties of the probe data of the first roadsegment may include: determining, from the multi-modal histogram, adistance of each statistically significant peak from the first roadsegment centerline. Computing, from the multi-modal histogram,lane-level properties of the probe data of the first road segment mayinclude: generating digital map data having a number of road segmentlanes corresponding to the number of statistically significant peaks atpositions corresponding to the distance of each statisticallysignificant peak from the road segment centerline; and providing for atleast semi-autonomous vehicle control or navigation assistance using thegenerated digital map data. Generating a probe density histogram for thefirst road segment representing a volume of probe data points at each ofa plurality of positions across a width of the road segment may include:sub-dividing a width of the first road segment into a plurality of binsaccording to a chosen bin size; binning each probe data point to arespective one of the plurality of bins corresponding to a distance ofthe respective probe data point from a centerline of the road segment;and generating the probe density histogram based on a volume of probedata points in each bin across a width of the road segment.

Embodiments described herein may provide an apparatus for establishinglane-level data from probe data. An example apparatus may include meansfor receiving probe data points associated with a plurality of vehicles,each probe data point received from a probe apparatus of a plurality ofprobe apparatuses, each probe apparatus including one or more sensorsand being onboard a respective vehicle, where each probe data pointincludes location information associated with the respective probeapparatus. The apparatus may include: means for determining, for each ofthe probe data points, a location and road segment corresponding to thelocation; means for generating, from the probe data points associatedwith a first road segment, a probe density histogram for the first roadsegment, where the probe density histogram represents a volume of probedata points at each of a plurality of positions across a width of thefirst road segment; means for applying a deconvolution method to theprobe density histogram to obtain a multi-modal histogram; means fordetermining, from the multi-modal histogram, a number of statisticallysignificant peaks, where each statistically significant peak representsa lane of the first road segment; means for computing, from themulti-modal histogram, lane-level properties of the probe data of thefirst road segment; and means for providing for at least one ofnavigational assistance or at least semi-autonomous vehicle controlbased on the computed lane-level properties of the probe data of thefirst road segment.

According to some embodiments, the means for computing, from themulti-modal histogram, lane-level properties of the probe data of thefirst road segment may include: means for determining, from themulti-modal histogram, a distance of each statistically significant peakfrom the first road segment centerline. The means for computing, fromthe multi-modal histogram, lane-level properties of the probe data ofthe first road segment may include: means for generating digital mapdata having a number of road segment lanes corresponding to the numberof statistically significant peaks at positions corresponding to thedistance of each statistically significant peak from the road segmentcenterline; and means for providing for at least semi-autonomous vehiclecontrol or navigation assistance using the generated digital map data.The means for generating a probe density histogram for the first roadsegment representing a volume of probe data points at each of aplurality of positions across a width of the road segment may include:means for sub-dividing a width of the first road segment into aplurality of bins according to a chosen bin size; binning each probedata point to a respective one of the plurality of bins corresponding toa distance of the respective probe data point from a centerline of theroad segment; and means for generating the probe density histogram basedon a volume of probe data points in each bin across a width of the roadsegment.

Embodiments described herein may provide a computer program producthaving at least one non-transitory computer-readable storage mediumhaving the computer-executable program code instructions stored there.The computer-executable program code instructions including program codeinstructions to: receive probe data points associated with a pluralityof vehicles, each probe data point received from a probe apparatus of aplurality of probe apparatuses, each probe apparatus including one ormore sensors and being onboard a respective vehicle, where each probedata point includes location information associated with the respectiveprobe apparatus; for each of the probe data points, determine a locationand a road segment corresponding to the location; generate, from theprobe data points associated with a first roads segment, a probe densityhistogram for the first road segment where the probe density histogramrepresents a volume of probe data points at each of a plurality ofpositions across a width of the first road segment; apply adeconvolution method to the probe density histogram to obtain amulti-modal histogram; determine from the multi-modal histogram, anumber of statistically significant peaks where each statisticallysignificant peak represents a lane of the first road segment; compute,from the multi-modal histogram, lane-level properties of the probe dataof the first road segment; and store the computed lane-level propertiesof the probe data of the first road segment to a geographic database.

According to some embodiments, the program code instructions to compute,from the multi-modal histogram, lane-level properties of the probe dataof the first road segment may include program code instructions to:determine, from the multi-modal histogram, a distance of eachstatistically significant peak from the first road segment centerline.The program code instructions to compute, from the multi-modalhistogram, lane-level properties of the probe data of the first roadsegments may include program instructions to: generate digital map datahaving a number of road segment lanes corresponding to the number ofstatistically significant peaks at positions corresponding to thedistance of each statistically significant peak from the road segmentcenterline; and provide for at least semi-autonomous vehicle control ornavigation assistance using the generated digital map data.

The program code instructions to generate a probe density histogram forthe first road segment representing a volume of probe data points ateach of a plurality of positions across a width of the road segment mayinclude program code instructions to: sub-divide a width of the firstroad segment into a plurality of bins according to a chosen bin size;bin each probe data point to a respective one of the plurality of binscorresponding to a distance of the respective probe data point from acenterline of the road segment; and generate the probe density histogrambased on a volume of probe data points in each bin across a width of theroad segment. The deconvolution method may include a Maximum EntropyMethod. The program code instructions to apply a deconvolution method tothe probe density histogram to obtain a multi-modal histogram mayinclude program code instructions to: model location error of the probedata points associated with the first road segment using a point spreadfunction; apply the deconvolution method to the probe density histogramusing the point spread function; and generate the multi-modal histogramfor the first road segment.

According to some embodiments, the program code instructions todetermine, from the multi-modal histogram, a number of statisticallysignificant peaks, where each statistically significant peak representsa lane of the first road segment may include program code instructionsto: identify a lane of the first road segment in response to acorresponding statistically significant peak being within a range of 2.5meters to 3.6 meters of another statistically significant peak. Theprogram code instructions to, for each of the probe data points,determine a location and a road segment corresponding to the locationmay include program code instructions to: map-match the probe datapoints to the first road segment; sub-divide the road segment into aplurality of sub-segments; and associate each of the probe data pointsmap-matched to the first road segment to one of the plurality ofsub-segments, where the program code instructions to generate, from theprobe data points associated with a first road segment, a probe densityhistogram for the first road segment may include causing the apparatusto generate, from the probe data points associated with a first roadsegment, a probe density histogram for each of the sub-segments of thefirst road segment.

Embodiments described herein may provide a mapping system including: amemory including map data and processing circuitry. The processingcircuitry may be configured to: receive probe data points associatedwith a plurality of vehicles, each probe data point received from aprobe apparatus of a plurality of probe apparatuses, each probeapparatus including one or more sensors and being onboard a respectivevehicle, each probe data point including location information associatedwith the respective probe apparatus; determine a location and roadsegment corresponding to the location for each of the probe data points;generate, from the probe data points associated with a first roadsegment, a cell-density image of the first road segment, where thepixel-density image represents a volume of probe data points at each ofa plurality of cells of a grid overlaid in the first road segment; applya deconvolution method to the cell-density image to obtain a refinedcell-density image having a lower degree of data point spread relativeto the cell density-image; determine, from the refined cell-densityimage, a number of paths along the first road segment, where each pathrepresents a lane of the first road segment; compute, from the refinedcell-density image, lane-level properties of the probe data of the firstroad segment; and provide data for at least one of navigationalassistance or at least semi-autonomous vehicle control based on thecomputed lane-level properties of the probe data of the first roadsegment.

According to some embodiments, the processing circuitry configured todetermine, from the refined cell-density image, a number of paths alongthe road segment may include processing circuitry configured toestablish at least one trajectory within the refined cell-density image,where the at least one trajectory includes a sequence of cells having arelatively high volume of probe data at each of the sequence of cellsrelative to cells proximate the sequence of cells. The processingcircuitry configured to compute, from the refined cell-density image,lane-level properties of the probe data of the first road segment mayinclude processing circuitry configured to: generate digital map datahaving a number of road segment lanes corresponding to the number oftrajectories at positions corresponding to the trajectories on the firstroad segment; and provide for at least semi-autonomous vehicle controlor navigation assistance using the generated digital map data. Thecell-density image may include a three-dimensional cell grid, the threedimensions representing latitude, longitude, and altitude. Theprocessing circuitry configured to determine, from the refinedcell-density image, a number of paths along the road segment may includeprocessing circuitry configured to identify, from the refinedcell-density image, at least one path that is on a different altitudeplane than at least one path along the first road segment, and associatethe at least one path that is on a different altitude plane with asecond road segment, different from the first road segment.

The probe data points may each include a timestamp, where the processingcircuitry configured to generate, from the probe data points associatedwith a first road segment, a cell-density image of the first roadsegment may include processing circuitry configured to: separate theprobe data points into at least two different periods of time based onthe respective timestamps; and generate, from the probe data pointsassociated with the first road segment and associated with each periodof time, a spatiotemporal cell-density image dimension of the first roadsegment for each period of time. The processing circuitry of someembodiments may be configured to: apply a deconvolution method to thespatiotemporal cell-density image; and determine, from the refinedspatiotemporal cell-density image, a number of paths along the firstroad segment for at least two different time ranges. The deconvolutionmethod of some embodiments may include a Maximum Entropy Method.

Embodiments provided herein may include a computer program productincluding at least one non-transitory computer-readable storage mediumhaving computer-executable program code instructions stored therein. Thecomputer-executable program code instructions may include program codeinstructions to: receive probe data points associated with a pluralityof vehicles, each probe data point received from a probe apparatus of aplurality of probe apparatuses, each probe apparatus including one ormore sensors and being onboard a respective vehicle, where each probedata point includes location information associated with the respectiveprobe apparatus; for each probe data point, determine a location and aroad segment corresponding to the location; generate, from the probedata points associated with the first road segment, a cell-density imageof the first road segment, where the cell-density image represents avolume of probe data points at each of a plurality of cells of a gridoverlaid on the first road segment; apply a deconvolution method to thecell-density image to obtain a refined cell-density image having a lowerdegree of data point spread relative to the cell-density image;determine, from the refined cell-density image, a number of paths alongthe first road segment, where each path represents a lane of the firstroad segment; compute, from the refined cell-density image, lane-levelproperties of the probe data of the first road segment; and store thecomputed lane-level properties of the probe data of the first roadsegment to augment a geographic database.

The program code instructions to determine from the refined cell-densityimage, a number of paths along the road segment may include program codeinstructions to: establish at least one trajectory within the refinedcell-density image, where the at least one trajectory includes asequence of cells having a relatively high volume of probe data at eachof the sequence of cells relative to cells proximate the sequence ofcells. The program code instructions to compute, from the refinedcell-density image, lane-level properties of the probe data of the firstroad segment may include program code instructions to: generate digitalmap data having a number of road segment lanes corresponding to thenumber of trajectories at positions corresponding to the trajectories onthe first road segment; and provide for at least semi-autonomous vehiclecontrol or navigation assistance using the generated digital map data.

The cell-density image of some embodiments may include athree-dimensional cell grid, the three dimensions representing latitude,longitude, and altitude. The program code instructions to determine,from the refined cell-density image, a number of paths along the roadsegment may further include program code instructions to identify, fromthe refined cell-density image, at least one path that is on differentaltitude plane than the at least one path along the first road segment,and associate the at least one path that is on a different altitudeplane with a second road segment, different from the first road segment.The probe data points may each include a timestamp, where the programcode instructions to generate, from the probe data points associatedwith the first road segment, a cell-density image of the first roadsegment may include program code instructions to: separate the probedata points into at least two different periods of time based on therespective timestamps; and generate, from the probe data pointsassociated with the first road segment and associated with each periodof time, a spatiotemporal cell-density image dimension of the first roadsegment for each period of time. The computer program product of someembodiments may include program code instructions to: apply adeconvolution method to the spatiotemporal cell-density image; anddetermine from the refined spatiotemporal cell-density image, a numberof paths along the first road segment for at least two different timeranges. The deconvolution method may include a Maximum Entropy Method.

Embodiments provided herein include a method for establishing lane-leveldata from probe data. Methods may include: receiving probe data pointsassociated with a plurality of vehicles, each probe data point receivedfrom a probe apparatus of a plurality of probe apparatuses, each probeapparatus including one or more sensors and being onboard a respectivevehicle, where each probe data point includes location informationassociated with the respective probe apparatus; determining, for each ofthe probe data points, a location and a road segment corresponding tothe location; generating, from the probe data points associated with afirst road segment, a cell-density image of the first road segment,where the cell-density image represents a volume of probe data points ateach of a plurality of cells of a grid overlaid on the first roadsegment; applying a deconvolution method to the cell-density image toobtain a refined cell-density image having a lower degree of data pointspread relative to the cell-density image; determining, from the refinedcell-density image, a number of paths along the first road segment,where each path represents a lane of the first road segment; computing,from the refined cell-density image, lane-level properties of the probedata of the first road segment; and providing data for at least one ofnavigational assistance or at least semi-autonomous vehicle controlbased on the computed lane-level properties of the first road segment.

According to some embodiments, determining, from the refinedcell-density image, a number of paths along the road segment, mayinclude: establishing at least one trajectory within the refinedcell-density image, where the at least one trajectory includes asequence of cells having a relatively high volume of probe data at eachof the sequence of cells relative to cells proximate the sequence ofcells. Computing, from the refined cell-density image, lane-levelproperties of the probe data of the first road segment may include:generating digital map data having a number of road segment lanescorresponding to the number of trajectories at positions correspondingto the trajectories on the first road segment; and providing for atleast semi-autonomous vehicle control or navigation assistance using thegenerated digital map.

The cell-density image of some embodiments may include athree-dimensional cell grid, the three dimensions representing latitude,longitude, and altitude. Determining, from the refined cell densityimage, a number of paths along the road segment may include identifying,from the refined cell-density image, at least one path that is on adifferent altitude plane than at least one path along the first roadsegment, and associating the at least one path that is on a differentaltitude plane with a second road segment, different from the first roadsegment. The probe data points may each include a timestamp, wheregenerating, from the probe data points associated with a first roadsegment, a cell-density image of the first road segment may include:separating the probe data points into at least two different periods oftime based on the respective timestamps; and generating, from the probedata points associated with the first road segment and associated witheach period of time, a spatiotemporal cell-density image dimension ofthe first road segment for each period of time. Methods may includeapplying a deconvolution method to the spatiotemporal cell-densityimage, and determining, from the refined spatiotemporal cell-densityimage, a number of paths along the first road segment for at least twodifferent time ranges.

Embodiments provided herein include an apparatus for establishinglane-level data from probe data. An example apparatus may include: meansfor receiving probe data points associated with a plurality of vehicles,each probe data point received from a probe apparatus of a plurality ofprobe apparatuses, each probe apparatus including one or more sensorsand being onboard a respective vehicle, where each probe data pointincludes location information associated with the respective probeapparatus; means for determining, for each of the probe data points, alocation and a road segment corresponding to the location; means forgenerating, from the probe data points associated with a first roadsegment, a cell-density image of the first road segment, where thecell-density image represents a volume of probe data points at each of aplurality of cells of a grid overlaid on the first road segment; meansfor applying a deconvolution method to the cell-density image to obtaina refined cell-density image having a lower degree of data point spreadrelative to the cell-density image; means for determining, from therefined cell-density image, a number of paths along the first roadsegment, where each path represents a lane of the first road segment;means for computing, from the refined cell-density image, lane-levelproperties of the probe data of the first road segment; and providingdata for at least one of navigational assistance or at leastsemi-autonomous vehicle control based on the computed lane-levelproperties of the first road segment.

According to some embodiments, the means for determining, from therefined cell-density image, a number of paths along the road segment,may include: means for establishing at least one trajectory within therefined cell-density image, where the at least one trajectory includes asequence of cells having a relatively high volume of probe data at eachof the sequence of cells relative to cells proximate the sequence ofcells. The means for computing, from the refined cell-density image,lane-level properties of the probe data of the first road segment mayinclude: means for generating digital map data having a number of roadsegment lanes corresponding to the number of trajectories at positionscorresponding to the trajectories on the first road segment; and meansfor providing for at least semi-autonomous vehicle control or navigationassistance using the generated digital map.

The cell-density image of some embodiments may include athree-dimensional cell grid, the three dimensions representing latitude,longitude, and altitude. The means for determining, from the refinedcell density image, a number of paths along the road segment may includemeans for identifying, from the refined cell-density image, at least onepath that is on a different altitude plane than at least one path alongthe first road segment, and means for associating the at least one paththat is on a different altitude plane with a second road segment,different from the first road segment. The probe data points may eachinclude a timestamp, where the means for generating, from the probe datapoints associated with a first road segment, a cell-density image of thefirst road segment may include: means for separating the probe datapoints into at least two different periods of time based on therespective timestamps; and means for generating, from the probe datapoints associated with the first road segment and associated with eachperiod of time, a spatiotemporal cell-density image dimension of thefirst road segment for each period of time. The apparatus of exampleembodiments may include means for applying a deconvolution method to thespatiotemporal cell-density image, and means for determining, from therefined spatiotemporal cell-density image, a number of paths along thefirst road segment for at least two different time ranges.

BRIEF DESCRIPTION OF THE DRAWINGS

Having thus described certain example embodiments in general terms,reference will hereinafter be made to the accompanying drawings, whichare not necessarily drawn to scale, and wherein:

FIG. 1 is a block diagram showing an example architecture of an exampleembodiment described herein;

FIG. 2 is a block diagram of an apparatus that may be specificallyconfigured in accordance with an example embodiment;

FIG. 3 is a block diagram of a probe apparatus that may be specificallyconfigured in accordance with an example embodiment;

FIGS. 4A-4D are plots depicting probe data gathered from a three laneroad segment in accordance with an example embodiment;

FIG. 5 illustrates a plot of probe data gathered from a three lane roadsegment after deconvolution according to an example embodiment describedherein;

FIG. 6A illustrates probe data gathered along a road segment accordingto an example embodiment;

FIG. 6B illustrates the resultant lane-level road model from the probedata of FIG. 6A after deconvolution of the probe data of FIG. 6A;

FIG. 7 illustrates a histogram of probe data points gathered along aroad segment;

FIG. 8 illustrates a histogram of probe data points gathered along aroad segment after deconvolution according to an example embodimentdescribed herein;

FIGS. 9A-9C illustrate different representations of point spreadfunctions according to an example embodiment;

FIG. 10 illustrates probe data points associated with a road segment anda road segment centerline of the road segment according to an exampleembodiment;

FIG. 11 is a flowchart of a method for establishing lane-level data fromprobe data points according to an example embodiment described herein;and

FIG. 12 is a flowchart of another method for establishing lane-leveldata from probe data points according to an example embodiment describedherein.

DETAILED DESCRIPTION OF SOME EXAMPLE EMBODIMENTS

Some embodiments will now be described more fully hereinafter withreference to the accompanying drawings, in which some, but not all,embodiments of the invention are shown. Indeed, various embodiments ofthe invention may be embodied in many different forms and should not beconstrued as limited to the embodiments set forth herein; rather, theseembodiments are provided so that this disclosure will satisfy applicablelegal requirements Like reference numerals refer to like elementsthroughout. As used herein, the terms “data,” “content,” “information,”and similar terms may be used interchangeably to refer to data capableof being transmitted, received and/or stored in accordance withembodiments of the present invention. Thus, use of any such terms shouldnot be taken to limit the spirit and scope of embodiments of the presentinvention.

Methods, apparatus and computer program products are provided inaccordance with an example embodiment in order to discern lane-levelgeometry and traffic information/data from raw probe data. In someexample embodiments, the lane-level geometry traffic information/datamay be used to perform lane-level navigation, route planning, autonomousor semi-autonomous vehicle control, and/or the like. For example, aplurality of instances of probe information/data may be received fromprobe apparatuses traveling along a road segment onboard vehicles. Aninstance of probe information/data may comprise, among otherinformation, location information/data, heading information/data, etc.For example, the probe information/data may comprise a geophysicallocation (e.g., latitude and longitude) indicating the location of theprobe apparatus at the time that the probe information/data is generatedand/or provided (e.g., transmitted). The probe information/data mayoptionally include a heading or direction of travel. In an exampleembodiment, an instance of probe information/data may comprise a probeidentifier identifying the probe apparatus that generated and/orprovided the probe information/data, a timestamp corresponding to whenthe probe information/data was generated, and/or the like. Based on theprobe identifier and the timestamp a sequence of instances of probeinformation/data may be identified. For example, the instances of probeinformation of data corresponding to a sequence of instances of probeinformation/data may each comprise the same probe identifier. In anexample embodiment, the instances of probe information/data in asequence of instances of probe information/data are ordered based on thetimestamps associated therewith.

As noted above, lane-level geometry and traffic information may be usedof facilitate navigation, autonomous vehicle control, or semi-autonomousvehicle control. Autonomous vehicle control may include driverlessvehicle capability where all vehicle functions are provided by softwareand hardware to safely drive the vehicle along a path identified by thevehicle. Semi-autonomous vehicle control may be any level of driverassistance from adaptive cruise control, to lane-keep assist, or thelike. Identifying lane-level geometry and traffic information for a roadsegment that a vehicle may traverse may provide information useful tonavigation and autonomous or semi-autonomous vehicle control byestablishing the number of lanes available, the traffic mixture ordensity in each of the lanes, or other information regarding the roadsegments that may be traversed by the vehicle.

FIG. 1 provides an illustration of an example system that can be used inconjunction with various embodiments of the present invention. As shownin FIG. 1, the system may include a plurality of probe apparatuses 20,one or more apparatuses 10, one or more other computing entities 35, oneor more networks 40, and/or the like. In various embodiments, the probeapparatus 20 may be an in vehicle navigation system, vehicle controlsystem, a mobile computing device, and/or the like. For example, a probeapparatus 20 may be an in vehicle navigation system mounted withinand/or be on-board a vehicle 5 such as a motor vehicle, non-motorvehicle, automobile, car, scooter, truck, van, bus, motorcycle, bicycle,Segway, golf cart, and/or the like. In various embodiments, the probeapparatus 20 may be a smartphone, tablet, personal digital assistant(PDA), and/or other mobile computing device. In another example, theprobe apparatus 20 may be a vehicle control system configured toautonomously drive a vehicle 5, assist in control of a vehicle 5, and/orthe like. In example embodiments, a probe apparatus 20 is onboard adedicated probe vehicle. In some embodiments, a probe apparatus 20 maybe onboard a personal vehicle, commercial vehicle, public transportationvehicle, and/or other vehicle. In an example embodiment, a probeapparatus 20 is any apparatus that provides (e.g., transmits) probeinformation/data to the apparatus 10.

In an example embodiment, an apparatus 10 may comprise componentssimilar to those shown in the example apparatus 10 diagrammed in FIG. 2.In an example embodiment, the apparatus 10 is configured to provide mapupdates, traffic information/data, and/or the like to the probeapparatus 20 and/or computing entity 35. In an example embodiment, aprobe apparatus 20 may comprise components similar to those shown in theexample probe apparatus 20 diagrammed in FIG. 3. In various embodiments,the apparatus 10 may be located remotely from the probe apparatus 20.Each of the components of the system may be in electronic communicationwith, for example, one another over the same or different wireless orwired networks 40 including, for example, a wired or wireless PersonalArea Network (PAN), Local Area Network (LAN), Metropolitan Area Network(MAN), Wide Area Network (WAN), cellular network, and/or the like. Insome embodiments, a network 40 may comprise the automotive cloud,digital transportation infrastructure (DTI), radio data system(RDS)/high definition (HD) radio or other digital radio system, and/orthe like. For example, a probe apparatus 20 may be in communication withan apparatus 10 via the network 40. For example, the probe apparatus 20may communicate with the apparatus 10 via a network, such as the Cloud.For example, the Cloud may be a computer network that provides sharedcomputer processing resources and data to computers and other devicesconnected thereto. For example, the probe apparatus 20 may be configuredto receive one or more map tiles of a digital map from the apparatus 10,traffic information/data (embedded in a map tile of a digital map orseparate therefrom), and/or provide probe information/data to theapparatus 10.

In an example embodiment, as shown in FIG. 3, the probe apparatus 20 maycomprise a processor 22, memory 24, a communications interface 26, auser interface 28, one or more sensors 30 (e.g., a location sensor suchas a GPS sensor or GNSS sensor; IMU sensors; camera(s); two dimensional(2D) and/or three dimensional (3D) light detection and ranging(LiDAR)(s); long, medium, and/or short range radio detection and ranging(RADAR); ultrasonic sensors; electromagnetic sensors; (near-) infrared(IR) cameras; 3D cameras; 360° cameras; and/or other sensors that enablethe probe apparatus 20 to determine one or more features of thecorresponding vehicle's 5 surroundings), and/or other componentsconfigured to perform various operations, procedures, functions or thelike described herein. In at least some example embodiments, the memory24 is non-transitory.

Similarly, as shown in FIG. 2, the apparatus 10 may comprise a processor12, memory 14, a user interface 18, a communications interface 16,and/or other components configured to perform various operations,procedures, functions or the like described herein. In at least someexample embodiments, the memory 14 is non-transitory. The computingentity 35 may comprise similar elements to the apparatus 10 and/or theprobe apparatus 20. For example, the computing entity 35 may comprise aprocessor, memory, a user interface, a communications interface, and/orthe like. In example embodiments, the computing entity 35 may compriseone or more sensors similar to sensor(s) 30. Certain example embodimentsof the probe apparatus 20 and the apparatus 10 are described in moredetail below with respect to FIGS. 2 and 3.

In at least some example embodiments, probe information/data may beanalyzed to determine lane-level geometry and traffic information/data.In an example embodiment, the lane-level geometry and trafficinformation/data may be used to perform various lane-level navigationdeterminations, calculations, computations, and/or the like.

For example, a vehicle lane pattern and relevant traffic data may beestablished for a road segment and/or a link of a digital mapcorresponding to the road segment. In example embodiments, a vehiclelane pattern may comprise information regarding the number of lanesalong the road segment, a lane identifier for each lane of the roadsegment, lane center geometry, mixture weight that expresses therelative traffic volume in each lane, paint stripe geometry, and lanecount change locations where lanes are added or begin to end/taper.

Establishing lane-level data for a road segment is complicated throughinaccuracies in locationing means, such as GPS, which can exhibit errorlevels that make it infeasible to identify which lane a GPS signal wasderived from based on individual GPS points or a vehicle trajectory.However, by considering location data from a plurality of probes,embodiments described herein can accurately infer lane properties togenerate lane-level data.

According to an example embodiment, a probe apparatus 20 may provide(e.g., transmit) probe information/data to an apparatus 10. The probeinformation/data may comprise at least one of a probe identifierconfigured to identify the probe apparatus 20, a road segment identifierconfigured to identify the digital map road segment or link representingthe road segment the probe apparatus 20 is travelling along, locationinformation/data indicating a geophysical location of the probeapparatus 20 (e.g., determined by a location sensor 30), a travel speedof the probe apparatus 20 and/or the corresponding vehicle 5 travellingalong at least a portion of the road segment, a timestamp, and/or thelike.

A distance parameter for each instance of the plurality of instances ofprobe information/data may be determined. For example, the distanceparameter d may be determined by determining the distance between (a)the location indicated by the location information/data of an instanceof probe information/data and (b) a reference line of a road segment. Inan example embodiment, the reference line of a road segment may be acenter line of the road segment, a right hand edge of the road segment,a left hand edge of the road segment, and/or another reference line ofthe road segment. In an example embodiment, the distance parameter d mayindicate a relative position of the location information/data relativeto the road segment and/or the reference line.

Given the noisy nature of commercial locationing systems such as GPS,the probe data associated with the road segment may not clearly identifya lane of travel for the respective probe data points. As describedfurther below, the overlapping nature of probe data points from adjacentlanes, the inaccuracies of location estimation, and the inherent spreadof data points across the width of a road segment render lane-level datadetermination difficult.

Embodiments described herein use deconvolution techniques such as theMaximum Entropy Method to sharpen or pinpoint location data from a noisylocation data, such as a noisy GPS signal location. Sensors andinstruments used for establishing a location of a probe can experienceatmospheric distortion, signal noise, or physical obstructions thatcause the location data to be “blurred” or convoluted by a point spreadfunction (PSF).

The Maximum Entropy Method of deconvolution is used in astronomy whereinstrument optics may cause blurring or warping of images of the skythrough a point spread function. The point spread function affects theimage in a manner known as convolution where the image of a pointsource, such as a distant star, is spread out to cover several pixels onthe image sensor rather than a pin-point location of a single pixel atthe actual location of the star in the image. Deconvolution is theinverse operation attempting to separate the undistorted truth from thepoint spread function and the digital image. A variety of deconvolutionmethods exist; however, embodiments described herein will focusprimarily on the Maximum Entropy Method or Maximum Entropy ImageRestoration.

The Maximum Entropy Method aims to obtain the most probable non-negativeimage consistent with the data, based on the number of ways in whichsuch an image could have risen. In this manner, the Maximum EntropyMethod models everything that is known and assumes nothing about what isunknown by choosing a model which is consistent with all of the facts,but otherwise is as uniform as possible. Entropy S is considered to bethe amount of disorder, or lack of correlation in the data. Entropy andthe related constraints are represented as:

$S = {- {\sum\limits_{i = 0}^{N - 1}{p_{i}{\log \left( p_{i} \right)}}}}$

with constraints:

$\begin{matrix}{I_{k} = {{\sum\limits_{i = 0}^{N - 1}{p_{i}{PSF}_{k,i}\mspace{14mu} {and}\mspace{14mu} {\sum\limits_{i = 0}^{N - 1}p_{i}}}} = 1}} & (1)\end{matrix}$

Where p_(i) is the proportion of the total image brightness for a pixel(without any point spread function blurring). Typically theseconstraints do not provide a unique result themselves such that theprinciple of maximum entropy: Maximize (S) is used to obtain therestored image.

Through application of the Maximum Entropy Method to probe data in orderto estimate lane properties, locationing mechanism (e.g., GPS) noise ismodeled as a point spread function (PSF) describing how the locatedpoints are spread out around a probe device. Multiple vehicles/probesdriving along a road segment in different lanes will cause the probedata from the vehicles to spread out and cover multiple lanes due to thenoise from locationing devices such as consumer GPS devices or mobilephones, for example. As with the example embodiment described above forastronomical image discernment, the Maximum Entropy Method can beapplied to a two-dimensional image which can be constructed by creatinga two-dimensional grid covering an area of interest with small cells(e.g., 0.1 meter square or 0.3 meter square cells) and counting thenumber of probe points in each cell—which would correspond to the“brightness” of a pixel in the astronomical image embodiment.Optionally, the Maximum Entropy Method can be applied by creating aone-dimensional cross-section histogram of a road segment or portionthereof where the probe location points are map-matched to the roadcenter and binned according to their measured distance from the roadcenter map geometry (e.g., with 0.1 meter bin size).

FIGS. 4A-4D illustrate an example embodiment of probe data from a crosssection of a road segment having three lanes. As vehicles traverse thelanes over time and probe data is accumulated, each lane will produce ahistogram, such as Lane 1 shown in FIG. 4A, Lane 2 shown in FIG. 4B, andLane 3 shown in FIG. 4C. While the histograms for each of Lane 1, 2, and3 are shown separately in FIGS. 4A-4C, due to overlapping data pointsand the proximity of lanes to one another, the actual probe data fromthe three lanes is convoluted and intermingled to form a histogramthrough which lanes are not easily identified. The observed histogram ofprobe data points is the total data from the three lanes, shown in FIG.4D with each histogram overlaid on the composite histogram of theoutermost line of the plot. Using the Maximum Entropy Method ofdeconvolution, the original lane center offset distance for each of thethree lanes can be reconstructed. In an ideal case, with a perfectlymodeled point spread function, the result would include an impulse spikeat each lane center, as shown in FIG. 5, where the height of the impulsespike is proportional to the relative traffic volume in each lane alsoknown as the “mixture weight”.

In real-world scenarios, the point spread function will not be ideal andthe impulse spikes will spread out and form three narrow peaks ratherthan the impulse spikes of FIG. 5. FIG. 6A illustrates an example of asegment of road 100 including three lanes 102, 104, and 106 separated bylane lines 108. Probe data points 110 are received as raw locationpoints, such as measured GPS location, and are distributed across theroadway 100. Only a portion of probe data points are shown along asection of the road segment 100 for ease of understanding. The measuredhistogram for the raw probe data 110 is illustrated in FIG. 7. As shown,the histogram does not clearly identify any individual lanes, but showsin this example a substantially Gaussian distribution of probe dataabout a centerline of the road segment. Applying the Maximum EntropyMethod, as detailed further below, results in the histogram illustratedin FIG. 8, where the number of significant peaks in the resultanthistogram (3) corresponds to the number of lanes in the data, and thepeak location correlates with the location offset distances of the laneswith respect to the road center line to establish lane locations. Theresultant data from the Maximum Entropy Method is overlaid on the roadsegment 100 illustrated in FIG. 6B, with lines 112, 114, and 116representing the significant peaks in the histogram of FIG. 8correlating with lanes 102, 104, and 106, respectively.

As described above, embodiments may apply the Maximum Entropy Method toeither a two-dimensional spatial image or a one-dimensionalcross-section histogram of a road segment to estimate lane properties.According to a two-dimensional implementation, the ground—as viewed fromabove—may be divided into a pixel grid where the intensity of each pixelis proportional to the number of probe data points whose reportedlocation (e.g., the location data of the probe data point) correspondswith the respective grid cell/pixel. Applying a deconvolution method,such as the Maximum Entropy Method in the two-dimensional implementationyields explicit lane center geometry in the form of bright pixelscorresponding to each lane center. An advantage of using thetwo-dimensional implementation is that detecting explicit lane centergeometry may automatically capture the formation of new lanes and thedisappearance of ending lanes, as the two-dimensional implementationgives an accurate representation of the road segment as viewed fromabove.

When applying the Maximum Entropy Method of deconvolution to aone-dimensional implementation, the probe data points are map-matched tothe road center and the signed projection distance of each probe datapoint from the road center is used to create a road segmentcross-section histogram for either the entire road segment or a sectionof the road segment by subdividing the segment. Optionally, a movingwindow along the road may be generated using a one-dimensionalimplementation which may mimic the two-dimensional implementation interms of accuracy and lane-level data produced. A moving one-dimensionalwindow along the road segment can capture the start of new lanes or thedisappearance of lanes in a manner similar to that of thetwo-dimensional implementation. However, such a moving window techniquerelies on having accurate map-matching and road center geometry tomap-match to.

Whether applying deconvolution methods to a probe data of aone-dimensional histogram or a two-dimensional pixel/cell grid, theoverarching concept may be the same. Ignoring sensor noise, the measuredtwo-dimensional pixel/cell grid image or one-dimensional histogram maybe represented as:

Measured Image=truth*PSF  (2)

Where the (*) operator is the convolution operator. This equationexpresses that the measured image is the convolution of truth with thepoint spread function (PSF). In applying this logic to a discrete image(pixel/cell grid) or histogram, equation (1) above can be expressed asthe following for the one-dimensional histogram case:

$\begin{matrix}{I_{k} = {\sum\limits_{i = 0}^{N - 1}{O_{i}{PSF}_{ki}}}} & (3)\end{matrix}$

Where I_(k) is the number of probes in bin k of the road cross-sectionhistogram. PSF_(ki) is the one-dimensional location noise model (e.g., aGaussian model), but any Point spread Function model may be used. O_(i)is the “truth” lane center offset bin position of the probe location(e.g., where the vehicle drove) in which we wish to reconstruct (i.e.,p_(i) in the entropy equation).

Extending the one-dimensional approach above to the two-dimensionalapproach can be expressed as:

$\begin{matrix}{I_{k\; m} = {\sum\limits_{i = 0}^{N - 1}{\sum\limits_{j = 0}^{M - 1}{O_{ij}{PSF}_{{ki},{mj}}}}}} & (4)\end{matrix}$

This equation can be separated into the two directional components ofthe two-dimensional pixel/cell grid. I_(km) is the number of probes incell/pixel km of the area image. PSF_(ki,mj) is the two-dimensionallocationing (e.g., GPS) noise model (e.g., a Gaussian model), though anyPoint spread Function model may be used. O_(ji) is the “truth” lanecenter offset bin position of the probe location (e.g., where thevehicle drove) in which we wish to reconstruct (i.e., p_(ji) in theentropy equation).

FIG. 9A-9C illustrate different representations for point spreadfunctions. FIG. 9A illustrates a two-dimensional point spread functionas a three-dimensional surface. FIG. 9B illustrates an image or matrix(e.g., pixel grid) in two-dimensions. FIG. 9C illustrates aone-dimensional point spread function. The point spread function modelsthe dispersion or distortion of a point source, such as a distant starcaptured in an image of the sky, or a GPS point captured from a probetraveling along a road segment in a network of roads. The point spreadfunction models may have virtually any shape.

An objective of the embodiments described herein is to derive the“truth” lane location O_(i) for the one-dimensional implementation andO_(ij) for the two-dimensional implementation. Since the location dataor GPS data for the probe data points are spread out around the vehicleassociated with the probe, any one two-dimensional image pixel/cell orone-dimensional histogram bin only contains a partial signal from thevehicle/probe lane location and signals (i.e., probes) from all othervehicles traveling the same lane and other lanes as well (due to noise).Accordingly, Entropy S is defined in the one-dimensional implementationas:

$S = {- {\sum\limits_{i = 0}^{N - 1}{p_{i}{\log \left( p_{i} \right)}}}}$

with constraints:

$\begin{matrix}{I_{k} = {{\sum\limits_{i = 0}^{N - 1}{p_{i}{PSF}_{k,i}\mspace{14mu} {and}\mspace{14mu} {\sum\limits_{i = 0}^{N - 1}p_{i}}}} = 1}} & (5)\end{matrix}$

Where p_(i) are the proportions of the total histogram image brightnessfor the lane offset bin we wish to identify (e.g., by removing theeffect of any point spread function blurring). The two constraintsexpress that the total energy I of the system and the total number ofparticles (probes) are fixed.

According to the two-dimensional implementation, Entropy S is definedas:

$\begin{matrix}{S = {- {\sum\limits_{i = 0}^{N - 1}{\sum\limits_{j = 0}^{M - 1}{p_{ij}{\log \left( p_{ij} \right)}\mspace{14mu} {with}\mspace{14mu} {constraints}\text{:}}}}}} & (6) \\{I_{k\; m} = {{\sum\limits_{i = 0}^{N - 1}{\sum\limits_{j = 0}^{M - 1}{p_{ij}{PSF}_{{ki},{mj}}\mspace{14mu} {and}\mspace{14mu} {\sum\limits_{i = 0}^{N - 1}{\sum\limits_{j = 0}^{M - 1}p_{ij}}}}}} = 1}} & \;\end{matrix}$

Where p_(ij) is the proportion or probabilities of the total imagebrightness for the lane center pixel/cell that we wish to identify(e.g., removing the effect of any point spread function blurring). Thetwo constraints are equivalent to the one-dimensional implementation

To derive the solution—peaks for the lane center histogram offset binp_(i) in the one-dimensional implementation and the lane centerpixel/cell location p_(ij) in the two-dimensional case—we need tomaximize the multi-variate function S subject to the constraints listed.This can be accomplished by introducing Lagrange multipliers andrecasting the problem of determining the Lagrange multipliers as avariational problem by introducing trial Lagrange multipliers.Importantly, the introduction of a “potential function” F, which isconcave for any trial set of Lagrange multipliers. The values of themultipliers are determined as the best which minimizes F.

In general, a function ƒ(x₀, x₁, x₂, . . . ) with constraints g₁(x₀, x₁,x₂, . . . )=0, g₂(x₀, x₁, x₂, . . . )=0, . . . , is maximized byintroducing a new function

((x₀, x₁, x₂, . . . ), λ):

((x ₀ ,x ₁ ,x ₂, . . . ),λ)=ƒ(x ₀ ,x ₁ ,x ₂, . . . )+λ₁ g ₁(x ₀ ,x ₁ ,x₂, . . . )+λ₂ g ₂(x ₀ ,x ₁ ,x ₂, . . . )+λ₃ g ₃(x ₀ ,x ₁ ,x ₂, . . . )+. . .  (8)

where the λ's are the Lagrange multipliers. ƒ is maximized by settingthe derivatives to zero:

$\begin{matrix}{\frac{\partial\mathcal{L}}{\partial x_{i}} = {{0\mspace{14mu} {and}\mspace{14mu} \frac{\partial\mathcal{L}}{\partial\lambda_{i}}} = {0\mspace{14mu} {for}\mspace{14mu} {all}\mspace{14mu} i}}} & (9)\end{matrix}$

The process described herein may be applied to the one-dimensionalimplementation or the two-dimensional implementation. Further, exampleembodiments may be applied to three or four dimensional implementations,as described further below.

Example Implementation

In order to determine lane properties from probe data as describedabove, the process may be implemented by modeling the location data(e.g., GPS) point spread function for a local geographical area.According an example described herein, a Gaussian point spread functionmay be used with a zero mean, σ=2.5 meters, and extent/limits of ±3σ. Ifthe local point spread function is unknown, it can be iterativelyestimated using roads for which the number of lanes is known.Optionally, there are variants of Maximum Entropy Method that can beapplied to unknown point spread functions, also known as blinddeconvolution.

For each road segment or link, a histogram of the probe data may begenerated with respect to the road center. This may be accomplished bymap-matching the probe data points to the road center line geometry andrecording the signed distance (e.g., positive values on the right-handside, negative values on the left-hand side) map-matching distance tothe road center geometry, and record the minimum and maximummap-matching distances. The histogram range (i.e., max-min map-matchingdistance) may be divided into bins based on the chosen bin size (e.g.,0.1 meter). As shown in FIG. 10, a road segment 200 may include aplurality of probe data points 210 from vehicles having traveled alongthe road segment, and the probe data points are assigned a projectiondistance according to their distance from the road centerline 205measured at the closest possible distance or perpendicular to thecenterline 205.

Bins for each cell of the two-dimensional grid or for each distance fromthe centerline in one-dimensional histogram are initialized to zero, andfor each probe data point, the map-matched distance d_(i) to thecenterline 205 is assigned to the corresponding histogram bin, b_(k) andthe bin value is incremented by one for each probe data point assignedto the bin. The histogram generated from the probe data point cloud ofFIG. 10 may resemble the histogram of FIG. 7, with no discernable lanes.However, using deconvolution such as the Maximum Entropy Method, thehistogram of FIG. 7 resembles the histogram of FIG. 8, where lanes aremore discernable.

In order to determine the lane geometry, the major or statisticallysignificant peaks of the deconvolved histogram may be identified andclassified. As shown in FIG. 8, there are three major, statisticallysignificant peaks 310, one for each lane center. However, this solutionis not exact due to imperfect point spread function definitions,histogram irregularities (e.g., caused by probe density variations alongthe link and map matching anomalies or poor road center geometrydefinition). As such, small “ghost” peaks or peaks that are notstatistically significant may be present, such as peaks 320. Toaccurately and automatically identify the true lanes identified throughthe deconvoluted histogram, robust statistics may be applied to identifythe statistically significant peaks. Further, additional constraints maybe introduced to increase the accuracy of true lane identification.Constraints may include a peak lane separation (or minimum separation)since lane center separation distances are typically constrained by roaddesign rules, such as 2.7-3.6 meters in the US, and 2.5-3.25 meters inEurope.

According to some embodiments, a non-parametric feature-space analysistechnique for locating the maxima of a density function may be used toidentify peaks. This Mean Shift analysis technique uses multiple seeds(i.e., starting locations) so the road cross section is seededfrequently, such as every one meter, and a bandwidth may be used ofabout 2 to 3 meters. Further, the Mean Shift technique may be used tocluster the peaks with a cluster distance of about 2 meters. The exactchoices of mean shift parameters may not be critical. However, expectedfeature separation distances (e.g., 2 to 4 meters) may be taken intoconsideration. The seed separation should be much smaller than theexpected feature separation distances. From these methods, only thestatistically significant peaks (e.g., peaks 310 of FIG. 8) areretained.

Once the number of lanes of a road segment has been identified, laneproperties may be determined. The number of lanes or lane countcorresponds to the number of statistically significant peaks in thedeconvoluted histogram, as detailed above. Lane center distance withrespect to the road center may be computed from the location of thesignificant peak(s) with respect to the road center. For example, −3.64meters, 1.17 meters, and 6.77 meters, according to an exampleembodiment. The mixture or the relative traffic volume in each lane canbe estimated from the relative volume in each peak with respect to thetotal volume of all statistically significant peaks. Lane markings suchas lane lines may be identified or derived (when lane count is greaterthan one) by identifying the location of the troughs between thestatistically significant peaks and assuming the outer paint stripes arehalf a lane width from the outer lane centers. Lane center geometry canbe created by offsetting the road center according to the lane centeroffsets.

As noted above, sub-dividing a road segment into multiple sections canallow the one-dimensional implementation to detect lane changes within aroad segment. Alternatively, a moving window to detect lane countchanges may be implemented. In the two-dimensional case, the lane centergeometry may be explicitly derived, even for complex shapes such asramps, round abouts, intersections, etc., and no moving window orsub-division techniques are needed. For the two-dimensional case, thepoint spread function may be determined in two dimensions, as in FIGS.9A and 9B. The area may be divided into a grid, where each grid cell isa histogram accumulator similar to an image. Using the Maximum EntropyMethod, the deconvoluted image may be obtained. Lane center locationsmay correspond to the cell peaks (or pixels with high intensity) and canbe identified with robust statistics or image processing techniques.

The above-described embodiments includes a one-dimensional approach inwhich probe data points that are map-matched to a road segment aregathered along a length of the segment or along a sub-section of thesegment and binned (e.g., in bins of 0.1 meters) according to theirrespective distances from the road segment centerline (defined in themap data) along the road segment or sub-section thereof. The binned dataforms a histogram as shown in FIG. 7 which can be deconvoluted asdescribed above. Similarly, a two-dimensional approach may be used inwhich probe data points that are map-matched to a road segment arebinned to a two-dimensional grid that is overlaid on the road segment,where the bins or cells, where each cell has a value according to thenumber of probe data points that fall within that bin/cell on the roadsegment. This produces a more accurate distribution of probe data alongthe road segment as it is less dependent upon an accurate roadcenterline defined in a map database. Similar deconvolution techniquesmay be applied as described above to obtain accurate lane-level geometryand traffic data.

A two-dimensional implementation or possibly a one-dimensionalimplementation with a moving window of data points that approximates thetwo-dimensional implementation may also be capable of determininglane-level geometries of roadway anomalies and intersections. Forexample, using the two-dimensional approach, if probe data is gatheredfor an intersection, turn-lane formation and traffic patterns throughthe intersection may be established using the two-dimensional gridoverlay, which may establish lane-level geometry and traffic data for anintersection. Further, turn-offs of a road segment for businesses,parking garages, or other points-of-interest may be discernable usingthe two-dimensional approach as probe data points will cluster at theturn-offs and through a turn maneuver, which would be discerned throughthe two-dimensional grid overlay of the road segment. Thetwo-dimensional embodiment may also be capable of establishing mergelane start/finish and other lane-level details not necessarilydiscernable through a one-dimensional approach.

While embodiments described above include one- and two-dimensionalembodiments, examples may further include three- and four-dimensionalembodiments. A three-dimensional implementation may be similar to atwo-dimensional embodiment, but may add an elevation component to thedata. For example, while the two-dimensional embodiment overlays a gridof cells on a road segment, a three-dimensional embodiment may overlay athree-dimensional matrix of cells on a road segment. Such an embodimentmay be able to establish and distinguish lane-level data from roadscrossing others at different elevations, such as at overpasses. Usingthe elevation dimension the probe data crossing each other at differentelevations would not adversely affect or cloud the probe data from theother road segment. This may enable accurate lane-level geometry andtraffic data to be modeled at complex interchanges with variouselevations of roadways. Further, the three-dimensional approach may beuseful in lane-level geometry and traffic data modeling of parkinggarages or any structure or road where probe data may exist at multipleelevations.

A fourth-dimension may optionally be used in example embodiments, andmay be combinable with any one of the first-, second-, orthird-dimension embodiments. The fourth-dimension may include time, suchthat periods of time are considered in establishing lane-level geometryand traffic data. A temporal component may be readily implemented withprobe data including a timestamp or probe data gathered in real-time andassigned a timestamp when received. The temporal component included withembodiments described herein can establish changes in lane-levelgeometry and traffic data/information based on a time of day, day ofweek, season of the year, special event, etc. Using time as a factor,lane-level data may be determined for when lanes are available at onlycertain times of day, such as reversible express lanes that changedirection based on time of day and day of week. A spatiotemporalcell-density image may be generated from the probe data with a dimensionof the image in the time domain representing different periods of timeFurther, the time component may also be able to discern hours ofoperation of businesses based on the traffic patterns turning off of aroad segment into a business or other point-of-interest.

Implementations of Lane-Level Geometry and Traffic Information/Data

Once lane-level geometry and traffic information/data for one or morelanes of the road segment are determined, lane-level geometry andtraffic information/data notification may be provided to one or morecomputing entities 35. In an example embodiment, the lane-level trafficinformation/data notification may comprise at least a portion of thedetermined lane-level traffic information/data. In an exampleembodiment, the lane-level traffic information/data notification mayinclude a map revision such as an updated map tile for replacing a maptile in a digital map database or geographic database 21, a trafficinformation/data map tile layer, and/or the like. The digital mapdatabase or geographic database 21 may be part of one or more computingentities 35 or may be separate therefrom as shown in FIG. 1. Accordingto some embodiments, the geographic database 21 may be maintained by amap data service provider and accessible via a network 40. A computingentity 35 may be a probe apparatus 20 (e.g., corresponding to a vehicle5 that is approaching the road segment, expected to travel along theroad segment on a current trip or an expected trip, currently travellingalong the road segment, and/or the like) or a traffic managementapparatus. For example, the computing entity 35 may be a trafficmanagement apparatus that is operated by and/or on behalf of a trafficmanagement agency (e.g., a local department of transportation, citytraffic management office, and/or the like). In example embodiments, thelane-level geometry and traffic information/data may comprisecomputer-executable code and/or reference computer-executable code that,when executed by the computing entity 35 may cause the computing entity35 to provide one or more lane-level alerts through a user interfacethereof (e.g., a display, audible alert, and/or the like). For example,the speed of traffic in a first lane may be considerably slower than thetraffic in a second or third lane at a location a short distance aheadof the vehicle's 5 current location. Thus, a lane-level alert may beprovided indicating that the speed of traffic in first lane isconsiderably slower than the traffic in the second and third lanesahead. Various lane-level alerts may be provided, as appropriate for theapplication. In an example embodiment, the computing entity 35 may,responsive to receiving the lane-level geometry and trafficinformation/data notification and/or in response to executing thecomputer-executable therein and/or referenced thereby, perform one ormore lane-level navigation tasks based on the lane-level trafficinformation/data. For example, one or more route planning computations,determinations, and/or the like may be performed that take into accountthe lane-level traffic information/data and provide lane-leveldirections and/or determinations for the route. For example, a routeplanning computation, determination, and/or the like may comprisere-calculating a route, determining an updated travel and/or expectedarrival time, and/or the like.

According to an example embodiment, lane-level traffic information maybe established using lane data discerned from the probe data using theaforementioned deconvolution techniques. An apparatus 10 may be used todetermine and/or provide lane-level traffic information/data. In anexample embodiment, the lane-level traffic information/data may be usedto perform lane-level navigation. Lane-level traffic information/datamay comprise a lane specific representative travel speed (e.g., anaverage travel speed) for one or more lanes of the road segment, a lanespecific distribution description (e.g., standard deviation) of travelspeed, a lane specific traffic volume measurement, lane specific alerts,lane specific traffic jam information/data, and/or the like for one ormore lanes of the road segment. Lane-level traffic volume data for aroad segment or portion thereof may be established in response toaggregation of the probe data that is processed as described above overa predetermined period of time. In an example embodiment, lane-leveltraffic information/data may comprise information/data indicating thecurrent lane a particular vehicle 5 is traveling in (e.g., as of thelast instance of probe information/data provided by the probe apparatus20 onboard the particular vehicle 5). In an example embodiment,lane-level traffic information/data may be determined using historicalprobe information/data collected over a predetermined window of time.

For example, the apparatus 10 may determine a vehicle lane pattern forthe road segment as described above using the Maximum Entropy Method.For example, the apparatus 10 may comprise means, such as the processor12 and/or the like, for determining a vehicle lane pattern for the roadsegment. In an example embodiment, the vehicle lane pattern may bedetermined based on historical probe information/data that ismap-matched and deconvoluted. In example embodiments, a vehicle lanepattern may comprise information regarding the number of lanes along theroad segment, a lane identifier for each lane of the road segment, arepresentative distance parameter (e.g., mean, mode, median, average,and/or the like) for the road segment, a distribution descriptiondescribing the distribution of distance parameters of vehicles travelingin the lane (e.g., a standard deviation of distance parameters ofvehicles traveling in the lane, and/or the like), a width of the lane, arepresentative speed for the lane (e.g., mean, mode, median, average,free flow, and/or the like), a distribution description describing thedistribution of speeds (e.g., standard deviation and/or the like), a dayand/or time period for which the vehicle lane pattern is relevant,and/or the like. In an example embodiment, the vehicle lane pattern isestablished based on historical probe information/data. For example, thevehicle lane pattern may be established based on one, two, three, four,and/or the like days of historical probe information/data. In an exampleembodiment, the vehicle lane period may correspond to a particular day(or days) and time. For example, a vehicle lane pattern may correspondto and/or be relevant to traffic on Monday, Tuesday, Wednesday, andThursdays from 5 to 5:30 pm. In another example, a vehicle lane patternmay correspond and/or be relevant to traffic on Saturdays from 1 to 3pm. For example, if a road segment comprises a reversible lane, ashoulder lane, and/or the like that is only in use during a particulartime period and/or on particular days, a vehicle lane patterncorresponding to road segment may be relevant to a particular day of theweek and/or time of day. In example embodiments, a distance parametermay indicate the distance from a reference line of the road segment toposition on a road segment indicated by the location information/dataprovided by an instance of probe information/data. Additionalinformation/data regarding the distance parameter and determinationthereof is provided elsewhere herein.

Example Apparatus

The probe apparatus 20, computing entity 35, and/or apparatus 10 of anexample embodiment may be embodied by or associated with a variety ofcomputing devices including, for example, a navigation system includingan in-vehicle navigation system, a vehicle control system, a personalnavigation device (PND) or a portable navigation device, an advanceddriver assistance system (ADAS), a global navigation satellite system(GNSS), a cellular telephone, a mobile phone, a personal digitalassistant (PDA), a watch, a camera, a computer, and/or other device thatcan perform navigation-related functions, such as digital routing andmap display. Additionally or alternatively, the probe apparatus 20,computing entity 35, and/or apparatus 10 may be embodied in other typesof computing devices, such as a server, a personal computer, a computerworkstation, a laptop computer, a plurality of networked computingdevices or the like, that are configured to update one or more maptiles, analyze probe points for route planning or other purposes. Inthis regard, FIG. 2 depicts an apparatus 10 and FIG. 3 depicts a probeapparatus 20 of an example embodiment that may be embodied by variouscomputing devices including those identified above. As shown, theapparatus 10 of an example embodiment may include, may be associatedwith or may otherwise be in communication with a processor 12 and amemory device 14 and optionally a communication interface 16 and/or auser interface 18. Similarly, a probe apparatus 20 of an exampleembodiment may include, may be associated with, or may otherwise be incommunication with a processor 22, and a memory device 24, andoptionally a communication interface 26, a user interface 28, one ormore sensors 30 (e.g., a location sensor such as a GNSS sensor, IMUsensors, and/or the like; camera(s); 2D and/or 3D LiDAR(s); long,medium, and/or short range RADAR; ultrasonic sensors; electromagneticsensors; (near-)IR cameras, 3D cameras, 360° cameras; and/or othersensors that enable the probe apparatus to determine one or morefeatures of the corresponding vehicle's 5 surroundings), and/or othercomponents configured to perform various operations, procedures,functions, or the like described herein. In example embodiments, acomputing entity 35 may, similar to the apparatus 10 and/or probeapparatus 20, comprise a processor, memory device, communicationinterface, user interface, and/or one or more additional componentsconfigured to perform various operations, procedures, functions, or thelike described herein. In an example embodiment, a computing entity maycomprise one or more sensors similar to the one or more sensors 30.

In some embodiments, the processor 12, 22 (and/or co-processors or anyother processing circuitry assisting or otherwise associated with theprocessor) may be in communication with the memory device 14, 24 via abus for passing information among components of the apparatus. Thememory device may be non-transitory and may include, for example, one ormore volatile and/or non-volatile memories. In other words, for example,the memory device may be an electronic storage device (e.g., a computerreadable storage medium) comprising gates configured to store data(e.g., bits) that may be retrievable by a machine (e.g., a computingdevice like the processor). The memory device may be configured to storeinformation, data, content, applications, instructions, or the like forenabling the apparatus to carry out various functions in accordance withan example embodiment of the present invention. For example, the memorydevice could be configured to buffer input data for processing by theprocessor. Additionally or alternatively, the memory device could beconfigured to store instructions for execution by the processor.

The processor 12, 22 may be embodied in a number of different ways. Forexample, the processor may be embodied as one or more of varioushardware processing means such as a coprocessor, a microprocessor, acontroller, a digital signal processor (DSP), a processing element withor without an accompanying DSP, or various other processing circuitryincluding integrated circuits such as, for example, an ASIC (applicationspecific integrated circuit), an FPGA (field programmable gate array), amicrocontroller unit (MCU), a hardware accelerator, a special-purposecomputer chip, or the like. As such, in some embodiments, the processormay include one or more processing cores configured to performindependently. A multi-core processor may enable multiprocessing withina single physical package. Additionally or alternatively, the processormay include one or more processors configured in tandem via the bus toenable independent execution of instructions, pipelining and/ormultithreading.

In an example embodiment, the processor 12, 22 may be configured toexecute instructions stored in the memory device 14, 24 or otherwiseaccessible to the processor. For example, the processor 22 may beconfigured to execute computer-executed instructions embedded within aroad segment/link record of a map tile. Alternatively or additionally,the processor may be configured to execute hard coded functionality. Assuch, whether configured by hardware or software methods, or by acombination thereof, the processor may represent an entity (e.g.,physically embodied in circuitry) capable of performing operationsaccording to an embodiment of the present invention while configuredaccordingly. Thus, for example, when the processor is embodied as anASIC, FPGA or the like, the processor may be specifically configuredhardware for conducting the operations described herein. Alternatively,as another example, when the processor is embodied as an executor ofsoftware instructions, the instructions may specifically configure theprocessor to perform the algorithms and/or operations described hereinwhen the instructions are executed. However, in some cases, theprocessor may be a processor of a specific device (e.g., a pass-throughdisplay or a mobile terminal) configured to employ an embodiment of thepresent invention by further configuration of the processor byinstructions for performing the algorithms and/or operations describedherein. The processor may include, among other things, a clock, anarithmetic logic unit (ALU) and logic gates configured to supportoperation of the processor.

In some embodiments, the apparatus 10, computing entity 35, and/or probeapparatus 20 may include a user interface 18, 28 that may, in turn, bein communication with the processor 12, 22 to provide output to theuser, such as a proposed route, and, in some embodiments, to receive anindication of a user input. As such, the user interface may include adisplay and, in some embodiments, may also include a keyboard, a mouse,a joystick, a touch screen, touch areas, soft keys, a microphone, aspeaker, or other input/output mechanisms. Alternatively oradditionally, the processor may comprise user interface circuitryconfigured to control at least some functions of one or more userinterface elements such as a display and, in some embodiments, aspeaker, ringer, microphone and/or the like. The processor and/or userinterface circuitry comprising the processor may be configured tocontrol one or more functions of one or more user interface elementsthrough computer program instructions (e.g., software and/or firmware)stored on a memory accessible to the processor (e.g., memory device 14,24, and/or the like).

The apparatus 10, computing entity 35, and/or the probe apparatus 20 mayoptionally include a communication interface 16, 26. The communicationinterface may be any means such as a device or circuitry embodied ineither hardware or a combination of hardware and software that isconfigured to receive and/or transmit data from/to a network and/or anyother device or module in communication with the apparatus. In thisregard, the communication interface may include, for example, an antenna(or multiple antennas) and supporting hardware and/or software forenabling communications with a wireless communication network.Additionally or alternatively, the communication interface may includethe circuitry for interacting with the antenna(s) to cause transmissionof signals via the antenna(s) or to handle receipt of signals receivedvia the antenna(s). In some environments, the communication interfacemay alternatively or also support wired communication. As such, forexample, the communication interface may include a communication modemand/or other hardware/software for supporting communication via cable,digital subscriber line (DSL), universal serial bus (USB) or othermechanisms.

In addition to embodying the apparatus 10, computing entity 35, and/orprobe apparatus 20 of an example embodiment, a navigation system mayalso include or have access to a geographic database 21 that includes avariety of data (e.g., map information/data) utilized in constructing aroute or navigation path, determining the time to traverse the route ornavigation path, matching a geolocation (e.g., a GNSS determinedlocation) to a point on a map and/or link, and/or the like. For example,a geographic database 21 may include node data records (e.g., includinganchor node data records comprising junction identifiers), road segmentor link data records, point of interest (POI) data records and otherdata records. More, fewer or different data records can be provided. Inone embodiment, the other data records include cartographic (“carto”)data records, routing data, and maneuver data. One or more portions,components, areas, layers, features, text, and/or symbols of the POI orevent data can be stored in, linked to, and/or associated with one ormore of these data records. For example, one or more portions of thePOI, event data, or recorded route information can be matched withrespective map or geographic records via position or GNSS dataassociations (such as using known or future map matching or geo-codingtechniques), for example. In an example embodiment, the data records(e.g., node data records, link data records, POI data records, and/orother data records) may comprise computer-executable instructions, areference to a function repository that comprises computer-executableinstructions, one or more coefficients and/or parameters to be used inaccordance with an algorithm for performing the analysis, one or moreresponse criteria for providing a response indicating a result of theanalysis, and/or the like. In at least some example embodiments, theprobe apparatus 20 and/or computing entity 35 may be configured toexecute computer-executable instructions provided by and/or referred toby a data record. In an example embodiment, the apparatus 10 may beconfigured to modify, update, and/or the like one or more data recordsof the geographic database 21.

In an example embodiment, the road segment data records are links orsegments, e.g., maneuvers of a maneuver graph, representing roads,streets, or paths, as can be used in the calculated route or recordedroute information for determination of one or more personalized routes.The node data records are end points corresponding to the respectivelinks or segments of the road segment data records. The road link datarecords and the node data records represent a road network, such as usedby vehicles, cars, and/or other entities. Alternatively, the geographicdatabase 21 can contain path segment and node data records or other datathat represent pedestrian paths or areas in addition to or instead ofthe vehicle road record data, for example.

The road/link segments and nodes can be associated with attributes, suchas geographic coordinates, street names, address ranges, speed limits,turn restrictions at intersections, and other navigation relatedattributes, as well as POIs, such as gasoline stations, hotels,restaurants, museums, stadiums, offices, automobile dealerships, autorepair shops, buildings, stores, parks, etc. The geographic database 21can include data about the POIs and their respective locations in thePOI data records. The geographic database 21 can also include data aboutplaces, such as cities, towns, or other communities, and othergeographic features, such as bodies of water, mountain ranges, etc. Suchplace or feature data can be part of the POI data or can be associatedwith POIs or POI data records (such as a data point used for displayingor representing a position of a city). In addition, the geographicdatabase 21 can include and/or be associated with event data (e.g.,traffic incidents, constructions, scheduled events, unscheduled events,etc.) associated with the POI data records or other records of thegeographic database.

The geographic database 21 can be maintained by the content provider(e.g., a map developer) in association with the services platform. Byway of example, the map developer can collect geographic data togenerate and enhance the geographic database 21. There can be differentways used by the map developer to collect data. These ways can includeobtaining data from other sources, such as municipalities or respectivegeographic authorities. In addition, the map developer can employ fieldpersonnel to travel by vehicle along roads throughout the geographicregion to observe features and/or record information about them, forexample. Also, remote sensing, such as aerial or satellite photography,can be used. In an example embodiment, the geographic database 21 may beupdated based on information/data provided by one or more probeapparatuses.

The geographic database 21 can be a master geographic database stored ina format that facilitates updating, maintenance, and development. Forexample, the master geographic database or data in the master geographicdatabase can be in an Oracle spatial format or other spatial format,such as for development or production purposes. The Oracle spatialformat or development/production database can be compiled into adelivery format, such as a geographic data files (GDF) format. The datain the production and/or delivery formats can be compiled or furthercompiled to form geographic database products or databases, which can beused in end user navigation devices or systems.

For example, geographic data is compiled (such as into a platformspecification format (PSF) format) to organize and/or configure the datafor performing navigation-related functions and/or services, such asroute calculation, route guidance, map display, speed calculation,distance and travel time functions, and other functions. Thenavigation-related functions can correspond to vehicle navigation orother types of navigation. The compilation to produce the end userdatabases can be performed by a party or entity separate from the mapdeveloper. For example, a customer of the map developer, such as anavigation device developer or other end user device developer, canperform compilation on a received geographic database in a deliveryformat to produce one or more compiled navigation databases. Regardlessof the manner in which the databases are compiled and maintained, anavigation system that embodies an apparatus 10, computing entity 35,and/or probe apparatus 20 in accordance with an example embodiment maydetermine the time to traverse a route that includes one or more turnsat respective intersections more accurately.

FIG. 11 illustrates a flowchart of a method for establishing lane-leveldata from probe data points according to an example embodiment of thepresent invention. As shown at 400, probe data points are received thatare associated with a plurality of vehicles. Each probe data pointreceived from a probe apparatus may be from a probe apparatus having oneor more sensors and being onboard or otherwise associated with arespective vehicle. Each probe data point may include locationinformation associated with the probe apparatus. A location and a roadsegment associated with the location of the probe data points isdetermined at 410. A probe density histogram for the first road segmentmay be generated at 420, where the probe density histogram may representa volume of probe data points at each of a plurality of positions acrossa width of the first road segment. A deconvolution method may be appliedto the probe density histogram at 430. This deconvolution method may be,for example, a Maximum Entropy Method. From the deconvoluted, refinedprobe density histogram, a number of statistically significant peaks maybe determined as shown at 440. At 450, lane level properties of theprobe data of the first road segment may be established based on thedetermined lane-specific probe data points. At 460, navigationalassistance and/or at least partially autonomous vehicle control may beprovided based on the computed lane level properties of 450.

FIG. 12 illustrates another flowchart of another method for establishinglane-level data from probe data points according to an exampleembodiment of the present invention. Probe data points associated with aplurality of vehicles may be received at 500, and a location and roadsegment associated with the probe data points may be determined at 510.A cell-density image may be generated from the probe data pointsassociated with a first road segment at 520. A deconvolution method maybe applied to the cell-density image to obtain a refined cell-densityimage at 530. Based on the refined cell-density image, at 540, a numberof paths within the refined cell-density image may be determined, whereeach path represents a lane of a roadway represented by the cell-densityimage. Lane-level properties of the probe data of the first road segmentmay be computed at 550 based on the alignment of probe data pointswithin individual lanes as determined in 540. Navigational assistanceand/or at least semi-autonomous vehicle control may be provided at 560based on the computed lane-level properties.

As described above, FIGS. 11 and 12 illustrate flowcharts of apparatuses10, methods, and computer program products according to an exampleembodiment of the invention. It will be understood that each block ofthe flowcharts, and combinations of blocks in the flowcharts, may beimplemented by various means, such as hardware, firmware, processor,circuitry, and/or other devices associated with execution of softwareincluding one or more computer program instructions. For example, one ormore of the procedures described above may be embodied by computerprogram instructions. In this regard, the computer program instructionswhich embody the procedures described above may be stored by the memorydevice 14, 24 of an apparatus employing an embodiment of the presentinvention and executed by the processor 12, 22 of the apparatus. As willbe appreciated, any such computer program instructions may be loadedonto a computer or other programmable apparatus (e.g., hardware) toproduce a machine, such that the resulting computer or otherprogrammable apparatus implements the functions specified in theflowchart blocks. These computer program instructions may also be storedin a computer-readable memory that may direct a computer or otherprogrammable apparatus to function in a particular manner, such that theinstructions stored in the computer-readable memory produce an articleof manufacture the execution of which implements the function specifiedin the flowchart blocks. The computer program instructions may also beloaded onto a computer or other programmable apparatus to cause a seriesof operations to be performed on the computer or other programmableapparatus to produce a computer-implemented process such that theinstructions which execute on the computer or other programmableapparatus provide operations for implementing the functions specified inthe flowchart blocks.

Accordingly, blocks of the flowcharts support combinations of means forperforming the specified functions and combinations of operations forperforming the specified functions for performing the specifiedfunctions. It will also be understood that one or more blocks of theflowcharts, and combinations of blocks in the flowcharts, can beimplemented by special purpose hardware-based computer systems whichperform the specified functions, or combinations of special purposehardware and computer instructions.

In an example embodiment, an apparatus for performing the method of FIG.11 or 12 above may comprise a processor (e.g., the processor 12)configured to perform some or each of the operations (400-460 and/or500-560) described above. The processor may, for example, be configuredto perform the operations (400-460 and/or 500-560) by performinghardware implemented logical functions, executing stored instructions,or executing algorithms for performing each of the operations.Alternatively, the apparatus may comprise means for performing each ofthe operations described above. In this regard, according to an exampleembodiment, examples of means for performing operations 400-460 and/or500-560 may comprise, for example, the processor 12 and/or a device orcircuit for executing instructions or executing an algorithm forprocessing information as described above.

In some embodiments, certain ones of the operations above may bemodified or further amplified. Furthermore, in some embodiments,additional optional operations may be included. Modifications,additions, or amplifications to the operations above may be performed inany order and in any combination.

Many modifications and other embodiments of the inventions set forthherein will come to mind to one skilled in the art to which theseinventions pertain having the benefit of the teachings presented in theforegoing descriptions and the associated drawings. Therefore, it is tobe understood that the inventions are not to be limited to the specificembodiments disclosed and that modifications and other embodiments areintended to be included within the scope of the appended claims.Moreover, although the foregoing descriptions and the associateddrawings describe example embodiments in the context of certain examplecombinations of elements and/or functions, it should be appreciated thatdifferent combinations of elements and/or functions may be provided byalternative embodiments without departing from the scope of the appendedclaims. In this regard, for example, different combinations of elementsand/or functions than those explicitly described above are alsocontemplated as may be set forth in some of the appended claims.Although specific terms are employed herein, they are used in a genericand descriptive sense only and not for purposes of limitation.

1. A mapping system comprising: a memory comprising map data; andprocessing circuitry configured to: receive probe data points associatedwith a plurality of vehicles, each probe data point received from aprobe apparatus of a plurality of probe apparatuses, each probeapparatus comprising one or more sensors and being onboard a respectivevehicle, wherein each probe data point comprises location informationassociated with the respective probe apparatus; for each of the probedata points, determine a location and a road segment corresponding tothe location; generate, from the probe data points associated with afirst road segment, a cell-density image of the first road segment,wherein the cell-density image represents a volume of probe data pointsat each of a plurality of cells of a grid overlaid on the first roadsegment; apply a deconvolution method to the cell-density image toobtain a refined cell-density image having a lower degree of data pointspread relative to the cell-density image; determine, from the refinedcell-density image, a number of paths along the first road segment,wherein each path represents a lane of the first road segment; compute,from the refined cell-density image, lane-level properties of the probedata of the first road segment; and provide data for at least one ofnavigational assistance or at least semi-autonomous vehicle controlbased on the computed lane-level properties of the probe data of thefirst road segment.
 2. The mapping system of claim 1, wherein theprocessing circuitry configured to determine, from the refinedcell-density image, a number of paths along the road segment, comprisesprocessing circuitry configured to: establish at least one trajectorywithin the refined cell-density image, wherein the at least onetrajectory comprises a sequence of cells having a relatively high volumeof probe data at each of the sequence of cells relative to cellsproximate the sequence of cells.
 3. The mapping system of claim 2,wherein the processing circuitry configured to compute, from the refinedcell-density image, lane-level properties of the probe data of the firstroad segment comprises processing circuitry further configured to:generate digital map data having a number of road segment lanescorresponding to the number of trajectories at positions correspondingto the trajectories on the first road segment; and provide for at leastsemi-autonomous vehicle control or navigation assistance using thegenerated digital map data.
 4. The mapping system of claim 1, whereinthe cell-density image comprises a three-dimensional cell grid, thethree-dimensions representing latitude, longitude, and altitude, whereinthe processing circuitry configured to determine, from the refinedcell-density image, a number of paths along the road segment furthercomprises processing circuitry configured to identify, from the refinedcell-density image, at least one path that is on a different altitudeplane than at least one path along the first road segment, and associatethe at least one path that is on a different altitude plane with asecond road segment, different from the first road segment.
 5. Themapping system of claim 1, wherein the probe data points each include atimestamp, wherein the processing circuitry configured to generate, fromthe probe data points associated with a first road segment, acell-density image of the first road segment comprises processingcircuitry configured to: separate the probe data points into at leasttwo different periods of time based on the respective timestamps, andgenerate, from the probe data points associated with the first roadsegment and associated with each period of time, a spatiotemporalcell-density image dimension of the first road segment for each periodof time.
 6. The mapping system of claim 5, wherein the processingcircuitry is further configured to: apply a deconvolution method to thespatiotemporal cell-density image; and determine, from the refinedspatiotemporal cell-density image, a number of paths along the firstroad segment for at least two different time ranges.
 7. The mappingsystem of claim 1, wherein the deconvolution method comprises a MaximumEntropy Method.
 8. A computer program product comprising at least onenon-transitory computer-readable storage medium havingcomputer-executable program code instructions stored therein, thecomputer-executable program code instructions comprising program codeinstructions to: receive probe data points associated with a pluralityof vehicles, each probe data point received from a probe apparatus of aplurality of probe apparatuses, each probe apparatus comprising one ormore sensors and being onboard a respective vehicle, wherein each probedata point comprises location information associated with the respectiveprobe apparatus; for each of the probe data points, determine a locationand a road segment corresponding to the location; generate, from theprobe data points associated with a first road segment, a cell-densityimage of the first road segment, wherein the cell-density imagerepresents a volume of probe data points at each of a plurality of cellsof a grid overlaid on the first road segment; apply a deconvolutionmethod to the cell-density image to obtain a refined cell-density imagehaving a lower degree of data point spread relative to the cell-densityimage; determine, from the refined cell-density image, a number of pathsalong the first road segment, wherein each path represents a lane of thefirst road segment; compute, from the refined cell-density image,lane-level properties of the probe data of the first road segment; andstore the computed lane-level properties of the probe data of the firstroad segment to augment a geographic database.
 9. The computer programproduct of claim 8, wherein the program code instructions to determinefrom the refined cell-density image, a number of paths along the roadsegment, comprises program code instructions to: establish at least onetrajectory within the refined cell-density image, wherein the at leastone trajectory comprises a sequence of cells having a relatively highvolume of probe data at each of the sequence of cells relative to cellsproximate the sequence of cells.
 10. The computer program product ofclaim 9, the program code instructions to compute, from the refinedcell-density image, lane-level properties of the probe data of the firstroad segment comprises program code instructions to: generate digitalmap data having a number of road segment lanes corresponding to thenumber of trajectories at positions corresponding to the trajectories onthe first road segment; and provide for at least semi-autonomous vehiclecontrol or navigation assistance using the generated digital map data.11. The computer program product of claim 8, wherein the cell-densityimage comprises a three-dimensional cell grid, the three-dimensionsrepresenting latitude, longitude, and altitude, wherein the program codeinstructions to determine, from the refined cell-density image, a numberof paths along the road segment further comprises program codeinstructions to identify, from the refined cell-density image, at leastone path that is on a different altitude plane than at least one pathalong the first road segment, and associating the at least one path thatis on a different altitude plane with a second road segment, differentfrom the first road segment.
 12. The computer program product of claim8, wherein the probe data points each include a timestamp, wherein theprogram code instructions to generate, from the probe data pointsassociated with a first road segment, a cell-density image of the firstroad segment comprises program code instructions to: separate the probedata points into at least two different periods of time based on therespective timestamps; and generate, from the probe data pointsassociated with the first road segment and associated with each periodof time, a spatiotemporal cell-density image dimension of the first roadsegment for each period of time.
 13. The computer program product ofclaim 12, further comprising program code instructions to: apply adeconvolution method to the spatiotemporal cell-density image; anddetermine, from the refined spatiotemporal cell-density image, a numberof paths along the first road segment for at least two different timeranges.
 14. The computer program product of claim 8, wherein thedeconvolution method comprises a Maximum Entropy Method.
 15. A methodfor establishing lane-level data from probe data comprising: receivingprobe data points associated with a plurality of vehicles, each probedata point received from a probe apparatus of a plurality of probeapparatuses, each probe apparatus comprising one or more sensors andbeing onboard a respective vehicle, wherein each probe data pointcomprises location information associated with the respective probeapparatus; for each of the probe data points, determining a location anda road segment corresponding to the location; generating, from the probedata points associated with a first road segment, a cell-density imageof the first road segment, wherein the cell-density image represents avolume of probe data points at each of a plurality of cells of a gridoverlaid on the first road segment; applying a deconvolution method tothe cell-density image to obtain a refined cell-density image having alower degree of data point spread relative to the cell-density image;determining, from the refined cell-density image, a number of pathsalong the first road segment, wherein each path represents a lane of thefirst road segment; computing, from the refined cell-density image,lane-level properties of the probe data of the first road segment; andproviding data for at least one of navigational assistance or at leastsemi-autonomous vehicle control based on the computed lane-levelproperties of the probe data of the first road segment.
 16. The methodof claim 15, wherein determining, from the refined cell-density image, anumber of paths along the road segment, comprises: establishing at leastone trajectory within the refined cell-density image, wherein the atleast one trajectory comprises a sequence of cells having a relativelyhigh volume of probe data at each of the sequence of cells relative tocells proximate the sequence of cells.
 17. The method of claim 16,wherein computing, from the refined cell-density image, lane-levelproperties of the probe data of the first road segment comprises:generating digital map data having a number of road segment lanescorresponding to the number of trajectories at positions correspondingto the trajectories on the first road segment; and providing for atleast semi-autonomous vehicle control or navigation assistance using thegenerated digital map data.
 18. The method of claim 15, wherein thecell-density image comprises a three-dimensional cell grid, thethree-dimensions representing latitude, longitude, and altitude, whereindetermining, from the refined cell-density image, a number of pathsalong the road segment further comprises identifying, from the refinedcell-density image, at least one path that is on a different altitudeplane than at least one path along the first road segment, andassociating the at least one path that is on a different altitude planewith a second road segment, different from the first road segment. 19.The method of claim 15, wherein the probe data points each include atimestamp, wherein generating, from the probe data points associatedwith a first road segment, a spatiotemporal cell-density image dimensionof the first road segment comprises: separating the probe data pointsinto at least two different periods of time based on the respectivetimestamps; and generating, from the probe data points associated withthe first road segment and associated with each period of time, aspatiotemporal cell-density image of the first road segment.
 20. Themethod of claim 19, further comprising: applying a deconvolution methodto the spatiotemporal cell-density image for each period of time; anddetermining, from the refined spatiotemporal cell-density images, anumber of paths along the first road segment for at least two differenttime ranges.